home *** CD-ROM | disk | FTP | other *** search
/ Collection of Tools & Utilities / Collection of Tools and Utilities.iso / c / cenvid9.zip / BATLOOPS.BAT < prev    next >
DOS Batch File  |  1994-03-04  |  3KB  |  94 lines

  1. @echo off
  2. REM *********************************************************
  3. REM *** BatLoops.bat - Demonstrate various methods for    ***
  4. REM *** ver.1          looping in batch files using CEnvi ***
  5. REM *********************************************************
  6.  
  7. ECHO BatLoops: Use CEnvi and various methods to loop five times
  8.  
  9.  
  10. ECHO  
  11. ECHO LOOP METHOD 1
  12. ECHO    THIS METHOD DEMONSTRATES THE CENVI CAPABILITY FOR MATHEMATICAL
  13. ECHO    PROCESSING OF VARIABLES, EVEN ENVIRONMENT VARIABLES
  14. PAUSE
  15. set LOOP_COUNT=1
  16. :ABEGIN_LOOP
  17.    echo    This is pass %LOOP_COUNT% through this loop - 1
  18.    cenvi LOOP_COUNT++
  19.    if %LOOP_COUNT% == 6 GOTO AEND_LOOP
  20.    GOTO ABEGIN_LOOP
  21. :AEND_LOOP
  22.  
  23.  
  24. ECHO  
  25. ECHO LOOP METHOD 2
  26. ECHO    CENVI WILL SET AN ENVIRONMENT VARIABLE FOR THE PROPER GOTO LABEL
  27. PAUSE
  28. set LOOP_COUNT=1
  29. :BBEGIN_LOOP
  30.    echo    This is pass %LOOP_COUNT% through this loop - 2
  31.    cenvi "LOOP_GOTO = ( LOOP_COUNT++ < 5 ) ? "BBEGIN_LOOP" : "BEND_LOOP""
  32.    GOTO %LOOP_GOTO%
  33. :BEND_LOOP
  34.  
  35.  
  36. ECHO  
  37. ECHO LOOP METHOD 3
  38. ECHO    CENVI SETS AN ENVIRONMENT VARIABLE TO A BATCH FILE STATEMENT
  39. PAUSE
  40. set LOOP_COUNT=1
  41. :CBEGIN_LOOP
  42.    echo    This is pass %LOOP_COUNT% through this loop - 3
  43.    cenvi "LOOP_COMMAND = ( LOOP_COUNT++ < 5 ) ? "GOTO CBEGIN_LOOP" : " ""
  44.    %LOOP_COMMAND%
  45.  
  46. ECHO  
  47. ECHO LOOP METHOD 4
  48. ECHO    CENVI WILL EXECUTE CODE FROM SELECTED LINES OF THIS BATCH FILE
  49. PAUSE
  50. cenvi #include "%0,bat,:CODE4"
  51. :CODE4   for ( i = 1; i <= 5; i++ )
  52. :CODE4      printf("   This is pass %d through this loop - 4\n",i)
  53.  
  54.  
  55. ECHO  
  56. ECHO LOOP METHOD 5
  57. ECHO    CENVI WILL READ SOURCE FROM THIS EXECUTABLE, AND THEN CALL A FUNCTION
  58. PAUSE
  59. cenvi #include "%0,bat,:CODE5"   LoopFoo(1,5)
  60. :CODE5   LoopFoo(min,max) {
  61. :CODE5      for ( i = min; i <= max; i++ )
  62. :CODE5         printf("   This is pass %d through this loop - 5\n",i)
  63. :CODE5   }
  64.  
  65.  
  66. ECHO  
  67. ECHO LOOP METHOD 6
  68. ECHO    THIS METHOD DEMONSTRATES THE USE OF A CMM "EXECUTABLE"; THAT IS, THE
  69. ECHO    .BAT EXTENSION ON THE INPUT TELLS CENVI TO CALL main(argc,argv) WITH
  70. ECHO    THE COMMAND LINE ARGUMENTS
  71. PAUSE
  72. cenvi %0.bat 1 5
  73. GOTO CENVI_EXIT
  74. main(argc,argv)
  75. {
  76.    for ( i = atoi(argv[1]); i <= atoi(argv[2]); i++ )
  77.       printf("   This is pass %d through this loop - 6\n",i)
  78. }
  79. :CENVI_EXIT
  80.  
  81.  
  82. ECHO  
  83. ECHO LOOP METHOD 7
  84. ECHO    CMM SOURCE CODE IS PASSED TO CENVI DIRECTLY ON THE COMMAND LINE
  85. PAUSE
  86. cenvi "for ( i = 1; i <= 5; i++ ) printf("   This is pass %%d through this loop - 7\n",i)"
  87.  
  88.  
  89. REM Cleanup up the variables used
  90. set LOOP_COUNT=
  91. set LOOP_GOTO=
  92. set LOOP_COMMAND=
  93. set METHOD_COUNT=
  94.